# 1) 在 Python 中导入 PyMySQL 库。
import pymysql

# 2) 使用PyMySQL 库建立与 MySQL 的连接，并返回一个 db 对象。connect()方法中的"localhost" 参数为主机名，"root" 参数为连接 MySQL 的用户名，“密码” 参数为 MySQL
# 的连接密码，"test" 参数表示操作的 MySQL 数据库。
db = pymysql.connect(host='localhost', user='root', password='123456', port=3306, database='test')

# 3) 使用 connector 对象的 cursor()方法建立对 MySQL 的操作游标。
cursor = db.cursor()

# 4) 使用字符串编写完成 SQL 语句。这里的 SQL 语句使用 SELECT FROM 查询 employee表中条件为 income 字段值大于 1.00 的记录。
sql = "SELECT *FROM EMPLOYEE WHERE INCOME > %d" % (1000)

# 5）在 try 中执行游标的 SQL。
try:
    cursor.execute(sql)

    # 6) 使用fetch』()方法获取步骤 5 返回的结果。
    results = cursor.fetchall()

    # 7) 使用 for 循环将返回的结果进行遍历，并将每行中的列值通过数组下标获得，最后使用print()方法将其输出。
    for row in results:
        fname = row[1]
        lname = row[2]
        age = row[3]
        sex = row[4]
        income = row[5]
        print("name= % s % s, age = % s, sex = % s, income = %s" % (fname, lname, age, sex, income))

# 8) 在 except 中导入traceback模块，并使用该模块的print_exc()方法输出更加详细的异常信息。
except:
    import traceback

    traceback.print_exc()
    print("Error：unable to fetch data")

# 9) 关闭服务器连接。
db.close()

# 10) 输出结果如下。
# name= Mac Su, age = 20, sex = M, income = 5000.0